﻿<Window
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:local="clr-namespace:LogViewer"
    xmlns:d="http://schemas.microsoft.com/expression/blend/2008" 
	xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" 
	xmlns:i="http://schemas.microsoft.com/expression/2010/interactivity" 
    xmlns:ei="http://schemas.microsoft.com/expression/2010/interactions" 
    mc:Ignorable="d" x:Class="LogViewer.Window1"
    Title="LogViewer" Height="800" Width="800"
    SizeToContent="Manual"
    ResizeMode="CanResizeWithGrip" 
    AllowDrop="True"
        MaxWidth="1024"
    Background="{DynamicResource WindowBackgroundBrush}"
    DataContext="{Binding RelativeSource={RelativeSource Self}}" Closed="Window_Closed" WindowStartupLocation="CenterScreen">
    <Window.Resources>
        <Color x:Key="LabelColor">#FFC3C9E9</Color>
    </Window.Resources>
    <Window.CommandBindings>
        <CommandBinding Command="ApplicationCommands.Open" CanExecute="OpenCanExecute" Executed="OpenExecuted"/>
        <CommandBinding Command="ApplicationCommands.Close" CanExecute="ExitCanExecute" Executed="ExitExecuted" />
        <CommandBinding Command="NavigationCommands.Refresh" CanExecute="RefreshCanExecute" Executed="RefreshExecuted" />
        <CommandBinding Command="NavigationCommands.Search" CanExecute="FilterCanExexute" Executed="FilterExecuted" />
        <CommandBinding Command="ApplicationCommands.Help" CanExecute="AboutCanExecute" Executed="AboutExecuted" />
    </Window.CommandBindings>
 
    <DockPanel >
        <Grid DockPanel.Dock="Top">
            <Grid.RowDefinitions>
                <RowDefinition/>
                <RowDefinition/>
            </Grid.RowDefinitions>
            <Grid x:Name="gridMenu" Grid.Row="0" Margin="0,1,0,-1">
                <Grid.ColumnDefinitions>
                    <ColumnDefinition/>
                </Grid.ColumnDefinitions>
                <Menu Grid.Column="0" x:Name="menu1">
                    <MenuItem Header="_文件" Foreground="White" >
                        <MenuItem Header="_Open" Command="ApplicationCommands.Open" />

                        <MenuItem Header="_Recent Files" >
                        <local:RecentFileList x:Name="RecentFileList" />
                        </MenuItem>


                        <MenuItem Header="E_xit" Command="ApplicationCommands.Close"  />
                        <MenuItem x:Name="MenuMergeItem"  Header="_Merge File" Click="MergeFile_Click" IsEnabled="{Binding CanMerge}"/>
                        <Separator />
                        <MenuItem x:Name="ResetSeparator" Header="_Reset separator" Click="ResetSeparator_Click" />
                    </MenuItem>
                    <MenuItem Header="_Refresh" Foreground="White" Command="NavigationCommands.Refresh" />
                    <MenuItem Header="F_ilter" Foreground="White" Command="NavigationCommands.Search"  />
                    <MenuItem Header="_About" Foreground="White" Command="ApplicationCommands.Help"  />
                </Menu>
            </Grid>
            <Grid x:Name="gridTopBar" Grid.Row="1" Height="32">

                <Grid Margin="6,0,388.717,0" d:LayoutOverrides="HorizontalAlignment">

            		<StackPanel x:Name="spPath" Grid.Column="0" Orientation="Horizontal" Margin="0,0,-0.001,0" d:LayoutOverrides="Width">
            			<TextBlock
            				Text="Path:" VerticalAlignment="Center">
            				<TextBlock.Foreground>
            					<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            				</TextBlock.Foreground>
            			</TextBlock>
            			<TextBlock x:Name="textboxFileName"
            				Foreground="Orange"
            				Background="Transparent"                       
            				VerticalAlignment="Center" 
            				Margin="5,0" 
            				TextWrapping="NoWrap" TextTrimming="CharacterEllipsis"/>
            		</StackPanel>

            	</Grid>

                <StackPanel x:Name="spCountAndSearch" Orientation="Horizontal" d:LayoutOverrides="Width" HorizontalAlignment="Right" Margin="0,0,6,0" VerticalAlignment="Center">
                    <StackPanel x:Name="spGlobalInfo" Orientation="Horizontal" VerticalAlignment="Center" Margin="0,0,6,0" >
                        <local:FilterActivity x:Name="FilterIndicator" Width="19" Height="19" Margin="0,0,3,0" ToolTip="Filter state : blue = not filtered" MouseLeftButtonDown="FilterIndicator_MouseLeftButtonDown" />
                        <TextBlock x:Name="tbFiltered" TextWrapping="Wrap" Text="?" Foreground="#FFE7670D" Margin="0,0,3,0" VerticalAlignment="Center" ToolTip="# lines displayed [/total]" MouseLeftButtonDown="FilterIndicator_MouseLeftButtonDown" />
                    </StackPanel>
                    <StackPanel x:Name="spCounters" Orientation="Horizontal" VerticalAlignment="Center" Margin="0,0,6,0" >
                        <StackPanel Grid.Column="1" Orientation="Horizontal" VerticalAlignment="Center">
                            <Image x:Name="imageError" Height="16" Width="16" Visibility="Hidden" VerticalAlignment="Center" HorizontalAlignment="Center" MouseLeftButtonDown="imageError_MouseLeftButtonDown" />
                            <TextBlock x:Name="labelErrorCount" Visibility="Hidden" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="3,0,0,0" >
            					<TextBlock.Foreground>
            						<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            					</TextBlock.Foreground>
                            </TextBlock>
                        </StackPanel>
                        <StackPanel Grid.Column="2" Orientation="Horizontal" VerticalAlignment="Center">
                            <Image x:Name="imageInfo" Height="16" Width="16" Visibility="Hidden" VerticalAlignment="Center" HorizontalAlignment="Center" MouseLeftButtonDown="imageInfo_MouseLeftButtonDown" />
                            <TextBlock x:Name="labelInfoCount" Visibility="Hidden" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="3,0,0,0">
            					<TextBlock.Foreground>
            						<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            					</TextBlock.Foreground>
                            </TextBlock>
                        </StackPanel>
                        <StackPanel Grid.Column="3" Orientation="Horizontal" VerticalAlignment="Center">
                            <Image x:Name="imageWarn" Height="16" Width="16" Visibility="Hidden" VerticalAlignment="Center" HorizontalAlignment="Center" MouseLeftButtonDown="imageWarn_MouseLeftButtonDown" />
                            <TextBlock x:Name="labelWarnCount" Visibility="Hidden" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="3,0,0,0">
            					<TextBlock.Foreground>
            						<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            					</TextBlock.Foreground>
                            </TextBlock>
                        </StackPanel>
                        <StackPanel Grid.Column="4" Orientation="Horizontal" VerticalAlignment="Center">
                            <Image x:Name="imageDebug" Height="16" Width="16" Visibility="Hidden" HorizontalAlignment="Center" VerticalAlignment="Center" MouseLeftButtonDown="imageDebug_MouseLeftButtonDown" />
                            <TextBlock x:Name="labelDebugCount" Visibility="Hidden" VerticalAlignment="Center" HorizontalAlignment="Center" Margin="3,0,0,0">
            					<TextBlock.Foreground>
            						<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            					</TextBlock.Foreground>
                            </TextBlock>
                        </StackPanel>
                    </StackPanel>
                    <StackPanel x:Name="spFind" Orientation="Horizontal" VerticalAlignment="Center">
                        <Image x:Name="image2" Source="/LogViewer;component/Resources/Images/find.png" VerticalAlignment="Center" Width="12"/>
                        <TextBlock x:Name="label3" Text="Find:" VerticalAlignment="Center" Margin="3,0,0,0">
            				<TextBlock.Foreground>
            					<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            				</TextBlock.Foreground>
                        </TextBlock>
                        <TextBox x:Name="textBoxFind" Width="120" VerticalAlignment="Center" AcceptsReturn="False" KeyDown="textBoxFind_KeyDown" Margin="3,0,0,0" PreviewKeyDown="textBoxFind_PreviewKeyDown" />
                        <Button x:Name="buttonFindNext" Click="buttonFindNext_Click" Cursor="Hand" VerticalAlignment="Center" Margin="5,0,0,0">
                            <Button.Template>
                                <ControlTemplate>
                                    <ControlTemplate.Resources>
                                        <Storyboard x:Key="Storyboard1">
                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" Storyboard.TargetName="image">
                                                <SplineDoubleKeyFrame KeyTime="0:0:0.2" Value="1.3"/>
                                            </DoubleAnimationUsingKeyFrames>
                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)" Storyboard.TargetName="image">
                                                <SplineDoubleKeyFrame KeyTime="0:0:0.2" Value="1.3"/>
                                            </DoubleAnimationUsingKeyFrames>
                                        </Storyboard>
                                        <Storyboard x:Key="Storyboard2">
                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" Storyboard.TargetName="image">
                                                <SplineDoubleKeyFrame KeyTime="0:0:0.3" Value="1"/>
                                            </DoubleAnimationUsingKeyFrames>
                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)" Storyboard.TargetName="image">
                                                <SplineDoubleKeyFrame KeyTime="0:0:0.3" Value="1"/>
                                            </DoubleAnimationUsingKeyFrames>
                                        </Storyboard>
                                    </ControlTemplate.Resources>
                                    <Image x:Name="image" Width="16" Height="16" ToolTip="Find Next" Source="/LogViewer;component/Resources/Images/arrow_right.png" RenderTransformOrigin="0.5,0.5" >
                                        <Image.RenderTransform>
                                            <TransformGroup>
                                                <ScaleTransform/>
                                                <SkewTransform/>
                                                <RotateTransform/>
                                                <TranslateTransform/>
                                            </TransformGroup>
                                        </Image.RenderTransform>
                                    </Image>
                                    <ControlTemplate.Triggers>
                                        <Trigger Property="IsMouseOver" Value="True">
                                            <Trigger.ExitActions>
                                                <BeginStoryboard x:Name="Storyboard2_BeginStoryboard" Storyboard="{StaticResource Storyboard2}"/>
                                            </Trigger.ExitActions>
                                            <Trigger.EnterActions>
                                                <BeginStoryboard Storyboard="{StaticResource Storyboard1}"/>
                                            </Trigger.EnterActions>
                                        </Trigger>
                                    </ControlTemplate.Triggers>
                                </ControlTemplate>
                            </Button.Template>
                        </Button>
                        <Button x:Name="buttonFindPrevious" Click="buttonFindPrevious_Click" Cursor="Hand" VerticalAlignment="Center" Margin="5,0,0,0">
                            <Button.Template>
                                <ControlTemplate>
                                    <ControlTemplate.Resources>
                                        <Storyboard x:Key="Storyboard1">
                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" Storyboard.TargetName="image">
                                                <SplineDoubleKeyFrame KeyTime="0:0:0.2" Value="1.3"/>
                                            </DoubleAnimationUsingKeyFrames>
                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)" Storyboard.TargetName="image">
                                                <SplineDoubleKeyFrame KeyTime="0:0:0.2" Value="1.3"/>
                                            </DoubleAnimationUsingKeyFrames>
                                        </Storyboard>
                                        <Storyboard x:Key="Storyboard2">
                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleX)" Storyboard.TargetName="image">
                                                <SplineDoubleKeyFrame KeyTime="0:0:0.3" Value="1"/>
                                            </DoubleAnimationUsingKeyFrames>
                                            <DoubleAnimationUsingKeyFrames Storyboard.TargetProperty="(UIElement.RenderTransform).(TransformGroup.Children)[0].(ScaleTransform.ScaleY)" Storyboard.TargetName="image">
                                                <SplineDoubleKeyFrame KeyTime="0:0:0.3" Value="1"/>
                                            </DoubleAnimationUsingKeyFrames>
                                        </Storyboard>
                                    </ControlTemplate.Resources>
                                    <Image x:Name="image" Width="16" Height="16" ToolTip="Find Previous" Source="/LogViewer;component/Resources/Images/arrow_left.png" RenderTransformOrigin="0.5,0.5" >
                                        <Image.RenderTransform>
                                            <TransformGroup>
                                                <ScaleTransform/>
                                                <SkewTransform/>
                                                <RotateTransform/>
                                                <TranslateTransform/>
                                            </TransformGroup>
                                        </Image.RenderTransform>
                                    </Image>
                                    <ControlTemplate.Triggers>
                                        <Trigger Property="IsMouseOver" Value="True">
                                            <Trigger.ExitActions>
                                                <BeginStoryboard x:Name="Storyboard2_BeginStoryboard" Storyboard="{StaticResource Storyboard2}"/>
                                            </Trigger.ExitActions>
                                            <Trigger.EnterActions>
                                                <BeginStoryboard Storyboard="{StaticResource Storyboard1}"/>
                                            </Trigger.EnterActions>
                                        </Trigger>
                                    </ControlTemplate.Triggers>
                                </ControlTemplate>
                            </Button.Template>
                        </Button>
                    </StackPanel>

                </StackPanel>

            </Grid>
        </Grid>
        <StatusBar Height="23" DockPanel.Dock="Bottom" Foreground="#FFE9EEF0" >
            <StatusBarItem Content="Ready"/>
        </StatusBar>
        <Grid x:Name="MainGrid">
            <Grid.RowDefinitions>
                <RowDefinition Height="302"/>
                <RowDefinition Height="*"  />
            </Grid.RowDefinitions>
             <!-- List View -->
            <Border BorderThickness="4,4,4,4" Margin="0" x:Name="borderTop" >
                <ListView x:Name="listView1" 
            		Grid.Row="0" 
            		ItemsSource= "{Binding Entries, ElementName=Window1}" 
            		AllowDrop="True"
            		SelectionChanged="listView1_SelectionChanged" 
            		Drop="listView1_Drop" IsManipulationEnabled="True">
                    <ListView.ItemContainerStyle>
                        <Style TargetType="{x:Type ListViewItem}">
                            <Style.Triggers>
                                <DataTrigger Binding="{Binding Level}" Value="ERROR">
                                    <Setter Property="Background" Value="Orange"/>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding Level}" Value="INFO">
                                    <Setter Property="Background" Value="Silver"/>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding Level}" Value="DEBUG">
                                    <Setter Property="Background" Value="LightSkyBlue"/>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding Level}" Value="WARN">
                                    <Setter Property="Background" Value="LightYellow"/>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding Level}" Value="FATAL">
                                    <Setter Property="Background" Value="Red"/>
                                </DataTrigger>
                                <DataTrigger Binding="{Binding Level}" Value="COMPRESSION">
                                    <Setter Property="Background" Value="Gainsboro" />
                                </DataTrigger>
                            </Style.Triggers>
                        </Style>
                    </ListView.ItemContainerStyle>
                    <ListView.View>
                        <GridView x:Name="GridView1">
                            <GridViewColumn Header="Item" DisplayMemberBinding="{Binding Item}"  />
                            <GridViewColumn Header="TimeStamp" DisplayMemberBinding="{Binding TimeStamp, ConverterCulture=fr-FR, StringFormat=HH:mm:ss.fff}"/>
                            <GridViewColumn Header="">
                                <GridViewColumn.CellTemplate>
                                    <DataTemplate>
                                        <Image Source="{Binding Image}" Width="16" Height="16" VerticalAlignment="Top" HorizontalAlignment="Left"/>
                                    </DataTemplate>
                                </GridViewColumn.CellTemplate>
                            </GridViewColumn>
                            <GridViewColumn  DisplayMemberBinding="{Binding Level}" Header="Level" />
                            <GridViewColumn Header="Thread" DisplayMemberBinding="{Binding Thread}"  />
                            <GridViewColumn Header="Message" DisplayMemberBinding="{Binding Message}"  />
                            <GridViewColumn Header="MachineName" DisplayMemberBinding="{Binding MachineName}"  />
                            <GridViewColumn Header="HostName" DisplayMemberBinding="{Binding HostName}"  />
                            <GridViewColumn Header="UserName" DisplayMemberBinding="{Binding UserName}"  />
                            <GridViewColumn Header="App" DisplayMemberBinding="{Binding App}"  />
                            <GridViewColumn Header="Class" DisplayMemberBinding="{Binding Class}"  />
                        </GridView>
                    </ListView.View>
                </ListView>
            </Border>
			 <GridSplitter x:Name="gridSplitter1" VerticalAlignment="Top" HorizontalAlignment="Stretch" Grid.Row="1" Height="4" ResizeDirection="Rows" >
			 	<GridSplitter.Background>
			 		<RadialGradientBrush>
			 			<GradientStop Color="#FF4E4E4E" Offset="1"/>
			 			<GradientStop Color="#FFB2B2B2"/>
			 		</RadialGradientBrush>
			 	</GridSplitter.Background>
			 </GridSplitter>
            <Grid x:Name="bottomGrid" Margin="5,6,5,0" Grid.Row="1" >
<!-- Data Fields and Tab Control  -->
            	<Grid Height="126" VerticalAlignment="Top" >
            		<Grid.ColumnDefinitions>
            			<ColumnDefinition Width="47.214"/>
            			<ColumnDefinition Width="0.297*"/>
            			<ColumnDefinition Width="81.482"/>
            			<ColumnDefinition Width="0.231*"/>
            			<ColumnDefinition Width="96.796"/>
            			<ColumnDefinition Width="0.197*"/>
            			<ColumnDefinition Width="58.69"/>
            			<ColumnDefinition Width="0.275*"/>
            		</Grid.ColumnDefinitions>
            		<Grid.RowDefinitions>
            			<RowDefinition Height="10"/>
            			<RowDefinition Height="28"/>
            			<RowDefinition Height="28"/>
            			<RowDefinition Height="28"/>
            			<RowDefinition Height="28"/>
            			<RowDefinition Height="10"/>
            		</Grid.RowDefinitions>

            		<i:Interaction.Behaviors>
            			<ei:FluidMoveBehavior AppliesTo="Children" Duration="0:0:0.35">
            				<ei:FluidMoveBehavior.EaseY>
            					<CubicEase EasingMode="EaseOut"/>
            				</ei:FluidMoveBehavior.EaseY>
            				<ei:FluidMoveBehavior.EaseX>
            					<CubicEase EasingMode="EaseOut"/>
            				</ei:FluidMoveBehavior.EaseX>
            			</ei:FluidMoveBehavior>
            		</i:Interaction.Behaviors>

                <!-- Row 1-->
            		<Image x:Name="image1" Width="16" Height="16" Grid.Column="0" Grid.Row="1" HorizontalAlignment="Right" Margin="0,0,5,0" />
            		<TextBox x:Name="textBoxLevel" Grid.Column="1" Grid.Row="1" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center" />
            		<Label x:Name="label1" Grid.Column="2" Grid.Row="1" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Time Stamp" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxTimeStamp" Grid.Column="3" Grid.Row="1" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center" />
            		<Label x:Name="label2" Grid.Column="4" Grid.Row="1" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Machine Name" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxMachineName" Grid.Column="5" Grid.Row="1" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center" />
            		<Label x:Name="labelThread" Grid.Column="6" Grid.Row="1" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Thread" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxThread" Grid.Column="7" Grid.Row="1" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>

                <!-- Row 2 -->
            		<Label x:Name="labelItem" Grid.Column="0" Grid.Row="2" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Item" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxItem" Grid.Column="1" Grid.Row="2" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center" />
            		<Label x:Name="label4" Grid.Column="2" Grid.Row="2" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Host Name" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxHostName" Grid.Column="3" Grid.Row="2" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>
            		<Label x:Name="label5" Grid.Column="4" Grid.Row="2" HorizontalAlignment="Right" Margin="0,0,5,3" Content="User Name" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxUserName" Grid.Column="5" Grid.Row="2" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>
            		<Label x:Name="label6" Grid.Column="6" Grid.Row="2" HorizontalAlignment="Right" Margin="0,0,5,3" Content="App" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxApp" Grid.Column="7" Grid.Row="2" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>

                <!-- Row 3-->
            		<Label x:Name="label7" Grid.Column="0" Grid.Row="3" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Class" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxClass" Grid.Column="1" Grid.Row="3" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>
            		<Label x:Name="label8" Grid.Column="2" Grid.Row="3" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Method" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxMethod" Grid.Column="3" Grid.Row="3" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>
            		<Label x:Name="label9" Grid.Column="4" Grid.Row="3" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Line" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxLine" Grid.Column="5" Grid.Row="3" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>

            		<Label x:Name="label6b" Grid.Column="6" Grid.Row="3" HorizontalAlignment="Right" Margin="0,0,5,3" Content="Log File" VerticalAlignment="Center" MouseDoubleClick="label6b_MouseDoubleClick">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxLog" Grid.Column="7" Grid.Row="3" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>
                
                <!-- Row 4-->
            		<Label x:Name="labelFile" Grid.Column="0" Grid.Row="4" HorizontalAlignment="Right" Margin="0,0,5,3" Content="File" VerticalAlignment="Center">
            			<Label.Foreground>
            				<SolidColorBrush Color="{DynamicResource LabelColor}"/>
            			</Label.Foreground>
            		</Label>
            		<TextBox x:Name="textBoxfile" Grid.Column="1" Grid.ColumnSpan="7" Grid.Row="4" IsReadOnly="True" Margin="0,0,0,4" VerticalAlignment="Center"/>

            	</Grid>
            	<TabControl x:Name="tabControl1" Margin="0,130,0,0" HorizontalAlignment="Stretch" MinHeight="50">
            		<TabItem Header="Message">
            			<TextBox x:Name="textBoxMessage" TextWrapping="Wrap" HorizontalAlignment="Stretch" VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible" BorderThickness="0" IsReadOnly="True" />
            		</TabItem>
            		<TabItem Header="Throwable">
            			<TextBox x:Name="textBoxThrowable" TextWrapping="Wrap" HorizontalAlignment="Stretch" VerticalAlignment="Stretch" VerticalScrollBarVisibility="Visible" HorizontalScrollBarVisibility="Visible" BorderThickness="0" IsReadOnly="True"/>
            		</TabItem>
            	</TabControl>
            </Grid>

            <!-- Data Fields and Tab Control  -->
            </Grid>
 
    </DockPanel>
</Window>
